#ifndef CLIENTDIALOG_H
#define CLIENTDIALOG_H

#include <QDialog>
#include <QHostAddress>
#include <QTcpSocket>
#include <QMessageBox>
#include <QDebug>

QT_BEGIN_NAMESPACE
namespace Ui {
class ClientDialog;
}
QT_END_NAMESPACE

class ClientDialog : public QDialog
{
    Q_OBJECT

public:
    ClientDialog(QWidget *parent = nullptr);
    ~ClientDialog();

private slots:
    // 发送按钮槽函数
    void on_sendButton_clicked();

    // 连接服务器按钮槽函数
    void on_connectButton_clicked();

    // 和服务器连接成功
    void onConnected();

    // 和服务器断开连接
    void onDisconnected();

    // 接收聊天消息
    void onReadyRead();

    // 网络异常
    void onError();

private:
    Ui::ClientDialog *ui;
    bool status;    // 状态
    QTcpSocket tcpSocket;
    QHostAddress serverIP;
    quint16 serverPort;
    QString username;
};
#endif // CLIENTDIALOG_H
